Implementing Hyperlog, a Graph-Based Database Language
نویسندگان
چکیده
We describe the implementation of Hyperlog , a graph-based declarative language which supports both queries and updates over a graph-based data model called the Hypernode Model. This model is capable of representing arbitrarily complex data structures by means of nested and recursively defined graphs , while the Hyperlog language is computationally complete. By requiring only a very small number of graphical constructs , Hyperlog is well-suited to non-expert database users. In this paper we describe the graphical aspects of the Hyperlog implementation including novel techniques for : representing and updating data , queries and programs ; representing and browsing the database ; and representing and browsing the output from queries. 1. Introduction M UCH RECENT database research has focussed on deductive [4] and object-oriented [12] databases , and also on graph-based representation and manipulation of data. Following the general direction of these trends , a graph-based data model called the Hypernode Model has been developed [14 , 15] which exhibits features of all three. The model is based on nested , and possibly recursively defined , graphs termed hypernodes. Hypernodes have unique labels which serve as object identifiers : this means that arbitrarily complex objects can be represented by a network of hypernodes. Hypernodes can contain the labels of other hypernodes in their node-set , including their own label : this means that the model provides inherent support for the nesting of information. The Hypernode Model comes equipped with a graph-based declarative language called Hyperlog which supports both queries and updates. A query in Hyperlog consists of a number of graphs (termed templates) which are matched against the hypernodes in the database and which generate graphical output. Database updates in Hyperlog are undertaken by means of programs. A Hyperlog program consists of a set of rules whose head and body are again sets of templates. The templates in the head of a rule indicate the updates to be undertaken for each match of the templates in the body of the rule. The evaluation of a program consists of a repeated matching of the bodies of its rules against the current database state until no more updates can be inferred .
منابع مشابه
Hyperlog: A Graph-Based System for Database Browsing, Querying, and Update
Hyperlog is a declarative, graph-based language that supports database querying and update. It visualises schema information, data, and query output as sets of nested graphs, which can be stored, browsed and queried in a uniform way. Thus, the user need only be familiar with a very small set of syntactic constructs. Hyperlog queries consist of a set of graphs that are matched against the databa...
متن کاملImplementing Semantics-Based Cross-domain Collaboration Recommendation in Biomedicine with a Graph Database
We describe a novel approach for cross-domain recommendation for research collaboration. We first constructed a large Neo4j graph database representing authors, their expertise, current collaborations, and general biomedical knowledge. This information comes from MEDLINE and from semantic relations extracted with SemRep. Then, by using an extended literature-based discovery paradigm, implemente...
متن کاملdesigning and implementing a 3D indoor navigation web application
During the recent years, the need arises for indoor navigation systems for guidance of a client in natural hazards and fire, due to the fact that human settlements have been complicating. This research paper aims to design and implement a visual indoor navigation web application. The designed system processes CityGML data model automatically and then, extracts semantic, topologic and geometric...
متن کاملImplementing a Linguistic Query Language for Historic Texts
We describe the design and implementation of the linguistic query language DDDquery. This language aims at querying a large linguistic database storing a corpus of richly annotated historic German texts. We use a graph-based data model that supports multiple independent annotation layers on a shared text layer as well as alignments of text layers representing the same text or related texts (e.g...
متن کاملAn Effective Method for Utility Preserving Social Network Graph Anonymization Based on Mathematical Modeling
In recent years, privacy concerns about social network graph data publishing has increased due to the widespread use of such data for research purposes. This paper addresses the problem of identity disclosure risk of a node assuming that the adversary identifies one of its immediate neighbors in the published data. The related anonymity level of a graph is formulated and a mathematical model is...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- J. Vis. Lang. Comput.
دوره 7 شماره
صفحات -
تاریخ انتشار 1996